package cn.zyjblogs.server.user.service;

import cn.zyjblogs.server.user.dto.UserLoginDto;
import cn.zyjblogs.server.user.vo.OAuth2AccessTokenVo;
import cn.zyjblogs.starter.sms.common.SmsResponse;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 登录
 *
 * @author zhuyijun
 */
public interface LoginService {
    /**
     * 登录接口
     *
     * @param userLoginDto
     * @return cn.zyjblogs.oauth.server.user.vo.OAuth2AccessTokenVo
     * @author zhuyijun
     * @date 2022/9/17 下午5:11
     */
    OAuth2AccessTokenVo login(UserLoginDto userLoginDto);

    /**
     * 退出
     *
     * @param
     * @return void
     * @author zhuyijun
     * @date 2022/9/17 下午5:53
     */
    void logout();

    /**
     * @param phone
     * @return
     */
    SmsResponse sendLoginCode(@RequestParam("phone") String phone);
}
